Ext
		.define(
				'com.hh.form.property.BaseProperty',
				{
					extend : 'com.hh.base.BaseWindow',
					title : '属性设置',
					width : 600,
					height : 400,
					modal : true,
					init : function() {
						this.form = Ext.create('com.hh.base.BaseFormPanel', {
							items : this.getFormItems(),
							buttons : this.getFormButton()
						});
						var data = this.config.propertyGrid.getSource();
						this.data = data;
						FormPanel.setValues(this.form, data);
						this.add(this.form);
					},
					formItems : [],
					getFormItems : function() {
						var formItems = [
								{
									fieldLabel : '名称',
									name : 'fieldLabel',
									maxLength : 32,
									columnWidth : 0.5
								},
								{
									fieldLabel : '英文名称',
									name : 'name',
									maxLength : 32,
									allowBlank : false,
									columnWidth : 0.5,
									listeners : {
										'change' : function(field, newValue) {
											field.setValue(newValue);
										}
									}
								},
								{
									fieldLabel : '列宽',
									xtype : 'numberfield',
									name : 'columnWidth',
									columnWidth : 0.5,
									maxValue : 1
								},
								{
									fieldLabel : '高',
									xtype : 'numberfield',
									name : 'height',
									columnWidth : 0.5
								},{
									xtype : 'widgetRadioGroup',
									fieldLabel : '是否可为空',
									name : 'allowBlank',
									allowBlank : false,
									extraParams : {path:'com/hh/system/json/yes-or-no.json'},
									action : 'system-ResourceFile-json',
									value : 0,
									columnWidth : 0.5
								},
								{
									fieldLabel : '最小长度',
									xtype : 'numberfield',
									name : 'minLength',
									columnWidth : 0.5
								}, {
									fieldLabel : '最大长度',
									xtype : 'numberfield',
									name : 'maxLength',
									columnWidth : 0.5
								} ];

						for ( var i = 0; i < this.formItems.length; i++) {
							formItems.push(this.formItems[i]);
						}
						return formItems;
					},
					doSave : function() {
						var page = this;
						var values = page.form.getForm().getValues();
						Ext.apply(page.data, values);
						page.config.propertyGrid.setSource(page.data);
						var widget = Ext
								.getCmp(page.data["id<font color='red'>（只读）</font>"]);
						for ( var p in values) {
							if ('fieldLabel' == p) {
								widget.setFieldLabel(values[p]);
							} else if ('height' == p) {
								widget.setHeight(parseInt(values[p]));
							} else {
								widget[p] = values[p];
							}
						}

						page.config.canvasForm.doLayout();
						this.close();
					},
					getFormButton : function() {
						var page = this;
						return [ {
							iconCls : 'yes',
							text : '保    存',
							handler : function() {
								page.doSave();
							}
						}, {
							iconCls : 'cancel',
							text : '取    消',
							handler : function() {
								this.up('window').close();
							}
						} ];
					}
				});